using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using VotingSystem.Models;

namespace VotingSystem.ViewModels
{
    public class SurveyFillViewModel
    {
        public int SurveyId { get; set; }
        public string Title { get; set; } = string.Empty;
        public string Description { get; set; } = string.Empty;
        public bool IsAnonymous { get; set; }
        public List<QuestionFillViewModel> Questions { get; set; } = new List<QuestionFillViewModel>();
    }

    public class QuestionFillViewModel
    {
        public int Id { get; set; }
        public string QuestionText { get; set; } = string.Empty;
        public int Type { get; set; }
        public bool IsRequired { get; set; }
        public int Order { get; set; }
        public List<QuestionOptionViewModel> Options { get; set; } = new List<QuestionOptionViewModel>();
        public string? TextResponse { get; set; }
        public int? RatingResponse { get; set; }
        public List<int> SelectedOptionIds { get; set; } = new List<int>();

        // 多选题选择限制
        public int? MinSelectionCount { get; set; }
        public int? MaxSelectionCount { get; set; }
        public int? ExactSelectionCount { get; set; }
    }
} 